home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #5 & #6 / Amiga Plus CD - 1995 - No. 5 and 6.iso / pd / programmierung / triton / amigae / macrofiles / triton.e < prev   
Text File  |  1995-08-25  |  25KB  |  635 lines

  1. /*
  2. **    $VER: triton.h 2.54 (14.7.94)
  3. **    Triton Release 1.1
  4. **
  5. **    triton.library definitions
  6. **
  7. **    (C) Copyright 1993-1994 Stefan Zeiger
  8. **    All Rights Reserved
  9. */
  10.  
  11. /*    This version is done by Frank Verheyen, 18/09/1994, for AmigaE    */
  12.  
  13. #define    NULL 0
  14. #define    NIL 0
  15.  
  16. #define    TRITONNAME        'triton.library'
  17. #define    TRITON10VERSION    1
  18. #define    TRITON11VERSION    2
  19.  
  20. /* ////////////////////////////////////////////////////////////////////// */
  21. /* //////////////////////////////////////////////////////////// Macros // */
  22. /* ////////////////////////////////////////////////////////////////////// */
  23. /* Project */
  24. #define ProjectDefinition(name) struct TagItem name[]=
  25. #define EndProject            TAG_END
  26. #define WindowTitle(t)        TRWI_Title,t
  27. #define ScreenTitle(t)        TRWI_ScreenTitle,t
  28. #define WindowID(id)        TRWI_ID,id
  29. #define WindowFlags(f)        TRWI_Flags,f
  30. #define WindowPosition(pos)    TRWI_Position,pos
  31. #define WindowUnderscore(und)    TRWI_Underscore,und
  32. #define WindowDimensions(dim)    TRWI_Dimensions,dim
  33. #define WindowBackfillWin    TRWI_Backfill,TRBF_WINDOWBACK
  34. #define WindowBackfillReq    TRWI_Backfill,TRBF_REQUESTERBACK
  35. #define WindowBackfillNone    TRWI_Backfill,TRBF_NONE
  36. #define WindowBackfillS        TRWI_Backfill,TRBF_SHINE
  37. #define WindowBackfillSA        TRWI_Backfill,TRBF_SHINE_SHADOW
  38. #define WindowBackfillSF        TRWI_Backfill,TRBF_SHINE_FILL
  39. #define WindowBackfillSB        TRWI_Backfill,TRBF_SHINE_BACKGROUND
  40. #define WindowBackfillA        TRWI_Backfill,TRBF_SHADOW
  41. #define WindowBackfillAF        TRWI_Backfill,TRBF_SHADOW_FILL
  42. #define WindowBackfillAB        TRWI_Backfill,TRBF_SHADOW_BACKGROUND
  43. #define WindowBackfillF        TRWI_Backfill,TRBF_FILL
  44. #define WindowBackfillFB        TRWI_Backfill,TRBF_FILL_BACKGROUND
  45. #define CustomScreen(scr)    TRWI_CustomScreen,scr
  46. #define PubScreen(scr)        TRWI_PubScreen,scr
  47. #define PubScreenName(name)    TRWI_PubScreenName,name
  48.  
  49. /* Menus */
  50. #define BeginMenu(t)    TRMN_Title,t
  51. #define MenuFlags(f)    TRMN_Flags,f
  52. #define MenuItem(t,id)    TRMN_Item,t,ID(id)
  53. #define BeginSub(t)        TRMN_Item,t
  54. #define MenuItemD(t,id)    TRMN_Item,t,MenuFlags(TRMF_DISABLED),ID(id)
  55. #define SubItem(t,id)    TRMN_Sub,t,ID(id)
  56. #define SubItemD(t,id)    TRMN_Sub,t,MenuFlags(TRMF_DISABLED),ID(id)
  57. #define ItemBarlabel    TRMN_Item,TRMN_BARLABEL
  58. #define SubBarlabel        TRMN_Sub,TRMN_BARLABEL
  59.  
  60. /* Groups */
  61. #define HorizGroup        TRGR_Horiz,NIL
  62. #define HorizGroupE        TRGR_Horiz,TRGR_EQUALSHARE
  63. #define HorizGroupS        TRGR_Horiz,TRGR_PROPSPACES
  64. #define HorizGroupA        TRGR_Horiz,TRGR_ALIGN
  65. #define HorizGroupEA    TRGR_Horiz,TRGR_EQUALSHARE OR TRGR_ALIGN
  66. #define HorizGroupSA    TRGR_Horiz,TRGR_PROPSPACES OR TRGR_ALIGN
  67. #define HorizGroupC        TRGR_Horiz,TRGR_CENTER
  68. #define HorizGroupEC    TRGR_Horiz,TRGR_EQUALSHARE OR TRGR_CENTER
  69. #define HorizGroupSC    TRGR_Horiz,TRGR_PROPSPACES OR TRGR_CENTER
  70. #define HorizGroupAC    TRGR_Horiz,TRGR_ALIGN OR TRGR_CENTER
  71. #define HorizGroupEAC    TRGR_Horiz,TRGR_EQUALSHARE OR TRGR_ALIGN OR TRGR_CENTER
  72. #define HorizGroupSAC    TRGR_Horiz,TRGR_PROPSPACES OR TRGR_ALIGN OR TRGR_CENTER
  73. #define VertGroup        TRGR_Vert,NIL
  74. #define VertGroupE        TRGR_Vert,TRGR_EQUALSHARE
  75. #define VertGroupS        TRGR_Vert,TRGR_PROPSPACES
  76. #define VertGroupA        TRGR_Vert,TRGR_ALIGN
  77. #define VertGroupEA        TRGR_Vert,TRGR_EQUALSHARE OR TRGR_ALIGN
  78. #define VertGroupSA        TRGR_Vert,TRGR_PROPSPACES OR TRGR_ALIGN
  79. #define VertGroupC        TRGR_Vert,TRGR_CENTER
  80. #define VertGroupEC        TRGR_Vert,TRGR_EQUALSHARE OR TRGR_CENTER
  81. #define VertGroupSC        TRGR_Vert,TRGR_PROPSPACES OR TRGR_CENTER
  82. #define VertGroupAC        TRGR_Vert,TRGR_ALIGN OR TRGR_CENTER
  83. #define VertGroupEAC    TRGR_Vert,TRGR_EQUALSHARE OR TRGR_ALIGN OR TRGR_CENTER
  84. #define VertGroupSAC    TRGR_Vert,TRGR_PROPSPACES OR TRGR_ALIGN OR TRGR_CENTER
  85. #define EndGroup        TRGR_End,NIL
  86. #define ColumnArray        TRGR_Horiz,TRGR_ARRAY OR TRGR_ALIGN OR TRGR_CENTER
  87. #define LineArray        TRGR_Vert,TRGR_ARRAY OR TRGR_ALIGN OR TRGR_CENTER
  88. #define BeginColumn        TRGR_Vert,TRGR_PROPSHARE OR TRGR_ALIGN OR TRGR_CENTER
  89. #define BeginLine        TRGR_Horiz,TRGR_PROPSHARE OR TRGR_ALIGN OR TRGR_CENTER
  90. #define BeginColumnI    TRGR_Vert,TRGR_PROPSHARE OR TRGR_ALIGN OR TRGR_CENTER OR TRGR_INDEP
  91. #define BeginLineI        TRGR_Horiz,TRGR_PROPSHARE OR TRGR_ALIGN OR TRGR_CENTER OR TRGR_INDEP
  92. #define EndColumn        EndGroup
  93. #define EndLine        EndGroup
  94. #define EndArray        EndGroup
  95.  
  96. /* Spaces */
  97. #define SpaceB                TROB_Space,TRST_BIG
  98. #define Space                TROB_Space,TRST_NORMAL
  99. #define SpaceS                TROB_Space,TRST_SMALL
  100. #define SpaceN                TROB_Space,TRST_NONE
  101.  
  102. /* Text */
  103. #define TextN(t)            TROB_Text,NIL,Txt(t)
  104. #define TextH(t)            TROB_Text,NIL,Txt(t),Flags(TRTX_HIGHLIGHT)
  105. #define Text3(t)            TROB_Text,NIL,Txt(t),Flags(TRTX_3D)
  106. #define TextB(t)            TROB_Text,NIL,Txt(t),Flags(TRTX_BOLD)
  107. #define TextT(t)            TROB_Text,NIL,Txt(t),Flags(TRTX_TITLE)
  108. #define TextID(t,id)        TROB_Text,NIL,Txt(t),ID(id)
  109. #define TextNR(t)            TextN(t),Flags(TROF_RIGHTALIGN)
  110. #define CenteredText(t)        HorizGroupSC,Space,TextN(t),Space,EndGroup
  111. #define CenteredTextH(t)        HorizGroupSC,Space,TextH(t),Space,EndGroup
  112. #define CenteredText3(t)        HorizGroupSC,Space,Text3(t),Space,EndGroup
  113. #define CenteredTextB(t)        HorizGroupSC,Space,TextB(t),Space,EndGroup
  114. #define CenteredTextID(t,id)    HorizGroupSC,Space,TextID(t,id),Space,EndGroup
  115. #define CenteredText_BS(t)    HorizGroupSC,SpaceB,TextN(t),SpaceB,EndGroup
  116. #define TextBox(t,id,mwid)    _TextBox,ObjectBackfillB,VertGroup,SpaceS,HorizGroupSC,Space,TextN(t),ID(id),MinWidth(mwid),Space,EndGroup,SpaceS,EndGroup
  117. #define TextRIGHT(t,id)        HorizGroupS,Space,TextN(t),ID(id),EndGroup
  118. #define Integer(i)            TROB_Text,NIL,VAL(i)
  119. #define IntegerH(i)            TROB_Text,NIL,VAL(i),Flags(TRTX_HIGHLIGHT)
  120. #define Integer3(i)            TROB_Text,NIL,VAL(i),Flags(TRTX_3D)
  121. #define IntegerB(i)            TROB_Text,NIL,VAL(i),Flags(TRTX_BOLD)
  122. #define CenteredInteger(i)    HorizGroupSC,Space,Integer(i),Space,EndGroup
  123. #define CenteredIntegerH(i)    HorizGroupSC,Space,IntegerH(i),Space,EndGroup
  124. #define CenteredInteger3(i)    HorizGroupSC,Space,Integer3(i),Space,EndGroup
  125. #define CenteredIntegerB(i)    HorizGroupSC,Space,IntegerB(i),Space,EndGroup
  126. #define IntegerBox(def,id,mwid) GroupBox,ObjectBackfillB,VertGroup,SpaceS,TRGR_Horiz,TRGR_PROPSPACES OR TRGR_CENTER,Space,Integer(def),ID(id),MinWidth(mwid),Space,TRGR_End,0,SpaceS,TRGR_End,0
  127. #define CenteredIntegerBox(def,id,mwid) GroupBox,ObjectBackfillB,VertGroup,SpaceS,TRGR_Horiz,TRGR_CENTER,Space,Integer(def),ID(id),MinWidth(mwid),Space,TRGR_End,0,SpaceS,TRGR_End,0
  128. #define IntegerID(def,id,mwid) VertGroup,TRGR_Horiz,TRGR_CENTER,Integer(def),ID(id),MinWidth(mwid),TRGR_End,0,TRGR_End,0
  129.  
  130. /* Buttons */
  131. #define Button(t,id)        Butt(NIL),Txt(t),ID(id)
  132. #define ButtonR(t,id)        Butt(NIL),Txt(t),ID(id),Flags(TRBU_RETURNOK)
  133. #define ButtonE(t,id)        Butt(NIL),Txt(t),ID(id),Flags(TRBU_ESCOK)
  134. #define ButtonRE(t,id)        Butt(NIL),Txt(t),ID(id),Flags(TRBU_RETURNOK OR TRBU_ESCOK)
  135. #define CenteredButton(t,i)    HorizGroupSC,Space,Butt(NIL),Txt(t),ID(i),Space,EndGroup
  136. #define CenteredButtonR(t,i)    HorizGroupSC,Space,Butt(NIL),Flags(TRBU_RETURNOK),Txt(t),ID(i),Space,EndGroup
  137. #define CenteredButtonE(t,i)    HorizGroupSC,Space,Butt(NIL),Flags(TRBU_ESCOK),Txt(t),ID(i),Space,EndGroup
  138. #define CenteredButtonRE(t,i)    HorizGroupSC,Space,Butt(NIL),Flags(TRBU_RETURNOK OR TRBU_ESCOK),Txt(t),ID(i),Space,EndGroup
  139. #define EmptyButton(id)        Butt(NIL),EmptyText,ID(id)
  140. #define GetFileButton(id)    Butt(TRBT_GETFILE),EmptyText,ID(id),Flags(TRBU_YRESIZE)
  141. #define GetDrawerButton(id)    Butt(TRBT_GETDRAWER),EmptyText,ID(id),Flags(TRBU_YRESIZE)
  142. #define GetEntryButton(id)    Butt(TRBT_GETENTRY),EmptyText,ID(id),Flags(TRBU_YRESIZE)
  143. #define GetFileButtonS(s,id)    Butt(TRBT_GETFILE),Txt(s),ID(id),Flags(TRBU_YRESIZE)
  144. #define GetDrawerButtonS(s,id)    Butt(TRBT_GETDRAWER),Txt(s),ID(id),Flags(TRBU_YRESIZE)
  145. #define GetEntryButtonS(s,id)    Butt(TRBT_GETENTRY),Txt(s),ID(id),Flags(TRBU_YRESIZE)
  146.  
  147. /* Lines */
  148. #define Line(flags)                TROB_Line,flags
  149. #define HorizSeparator            HorizGroupEC,Space,Line(TROF_HORIZ),Space,EndGroup
  150. #define VertSeparator            VertGroupEC,Space,Line(TROF_VERT),Space,EndGroup
  151. #define NamedSeparator(t)        HorizGroupEC,Space,Line(TROF_HORIZ),Space,TextT(t),Space,Line(TROF_HORIZ),Space,EndGroup
  152. #define NamedSeparatorI(t,id)        HorizGroupEC,Space,Line(TROF_HORIZ),Space,TextT(t),ID(id),Space,Line(TROF_HORIZ),Space,EndGroup
  153. #define NamedSeparatorN(t)        HorizGroupEC,Line(TROF_HORIZ),Space,TextT(t),Space,Line(TROF_HORIZ),EndGroup
  154. #define NamedSeparatorIN(t,id)    HorizGroupEC,Line(TROF_HORIZ),Space,TextT(t),ID(id),Space,Line(TROF_HORIZ),EndGroup
  155.  
  156. /* FrameBox */
  157. #define GroupBox                TROB_FrameBox,TRFB_GROUPING
  158. #define NamedFrameBox(t)            TROB_FrameBox,TRFB_FRAMING,Txt(t)
  159. #define _TextBox                TROB_FrameBox,TRFB_TEXT
  160.  
  161. /* DropBox */
  162. #define DropBox(id)                TROB_DropBox,NIL,ID(id)
  163.  
  164. /* CheckBox gadget */
  165. #define CheckBox(id)            TROB_CheckBox,NIL,ID(id)
  166. #define CheckBoxC(id)            TROB_CheckBox,NIL,ID(id),VAL(TRUE)
  167. #define CheckBoxLEFT(id)            HorizGroupS,CheckBox(id),Space,EndGroup
  168. #define CheckBoxCLEFT(id)        HorizGroupS,CheckBoxC(id),Space,EndGroup
  169.  
  170. /* String gadget */
  171. #define StringGadget(def,id)        TROB_String,def,ID(id)
  172. #define StringGadgetM(def,id,max)    TROB_String,def,ID(id),VAL(max)
  173.  
  174. /* Cycle gadget */
  175. #define CycleGadget(ent,val,id)    TROB_Cycle,ent,ID(id),VAL(val)
  176. #define MXGadget(ent,val,id)        TROB_Cycle,ent,ID(id),VAL(val),Flags(TRCY_MX)
  177. #define MXGadgetR(ent,val,id)        TROB_Cycle,ent,ID(id),VAL(val),Flags(TRCY_MX OR TRCY_RIGHTLABELS)
  178.  
  179. /* Slider gadget */
  180. #define SliderGadget(mini,maxi,val,id) TROB_Slider,NIL,TRSL_Min,mini,TRSL_Max,maxi,ID(id),VAL(val)
  181.  
  182. /* Palette gadget */
  183. #define PaletteGadget(val,id)        TROB_Palette,NIL,ID(id),VAL(val)
  184.  
  185. /* Listview gadget */
  186. #define ListRO(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_READONLY),ID(id),VAL(0),TRLV_Top,top
  187. #define ListSel(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_SELECT),ID(id),VAL(0),TRLV_Top,top
  188. #define ListSS(e,id,top,v)        TROB_Listview,e,Flags(TRLV_NOGAP OR TRLV_SHOWSELECTED),ID(id),VAL(v),TRLV_Top,top
  189. #define ListROC(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_READONLY OR TRLV_NOCURSORKEYS),ID(id),VAL(0),TRLV_Top,top
  190. #define ListSelC(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_SELECT OR TRLV_NOCURSORKEYS),ID(id),VAL(0),TRLV_Top,top
  191. #define ListSSC(e,id,top,v)        TROB_Listview,e,Flags(TRLV_NOGAP OR TRLV_SHOWSELECTED OR TRLV_NOCURSORKEYS),ID(id),VAL(v),TRLV_Top,top
  192. #define ListRON(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_READONLY OR TRLV_NUNUMPADKEYS),ID(id),VAL(0),TRLV_Top,top
  193. #define ListSelN(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_SELECT OR TRLV_NONUMPADKEYS),ID(id),VAL(0),TRLV_Top,top
  194. #define ListSSN(e,id,top,v)        TROB_Listview,e,Flags(TRLV_NOGAP OR TRLV_SHOWSELECTED OR TRLV_NONUMPADKEYS),ID(id),VAL(v),TRLV_Top,top
  195. #define ListROCN(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_READONLY OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS),ID(id),VAL(0),TRLV_Top,top
  196. #define ListSelCN(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_SELECT OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS),ID(id),VAL(0),TRLV_Top,top
  197. #define ListSSCN(e,id,top,v)        TROB_Listview,e,Flags(TRLV_NOGAP OR TRLV_SHOWSELECTED OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS),ID(id),VAL(v),TRLV_Top,top
  198.  
  199. #define FWListRO(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_READONLY),ID(id),VAL(0),TRLV_Top,top
  200. #define FWListSel(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_SELECT),ID(id),VAL(0),TRLV_Top,top
  201. #define FWListSS(e,id,top,v)        TROB_Listview,e,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_SHOWSELECTED),ID(id),VAL(v),TRLV_Top,top
  202. #define FWListROC(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_READONLY OR TRLV_NOCURSORKEYS),ID(id),VAL(0),TRLV_Top,top
  203. #define FWListSelC(ent,id,top)    TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_SELECT OR TRLV_NOCURSORKEYS),ID(id),VAL(0),TRLV_Top,top
  204. #define FWListSSC(e,id,top,v)        TROB_Listview,e,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_SHOWSELECTED OR TRLV_NOCURSORKEYS),ID(id),VAL(v),TRLV_Top,top
  205. #define FWListRON(ent,id,top)        TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_READONLY OR TRLV_NUNUMPADKEYS),ID(id),VAL(0),TRLV_Top,top
  206. #define FWListSelN(ent,id,top)    TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_SELECT OR TRLV_NONUMPADKEYS),ID(id),VAL(0),TRLV_Top,top
  207. #define FWListSSN(e,id,top,v)        TROB_Listview,e,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_SHOWSELECTED OR TRLV_NONUMPADKEYS),ID(id),VAL(v),TRLV_Top,top
  208. #define FWListROCN(ent,id,top)    TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_READONLY OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS),ID(id),VAL(0),TRLV_Top,top
  209. #define FWListSelCN(ent,id,top)    TROB_Listview,ent,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_SELECT OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS),ID(id),VAL(0),TRLV_Top,top
  210. #define FWListSSCN(e,id,top,v)    TROB_Listview,e,Flags(TRLV_NOGAP OR TRLV_FWFONT OR TRLV_SHOWSELECTED OR TRLV_NOCURSORKEYS OR TRLV_NONUMPADKEYS),ID(id),VAL(v),TRLV_Top,top
  211.  
  212. /* Progress indicator */
  213. #define Progress(maxi,val,id)        TROB_Progress,maxi,ID(id),VAL(val)
  214.  
  215. /* Image */
  216. #define BoopsiImage(img)            TROB_Image,img,Flags(TRIM_BOOPSI)
  217. #define BoopsiImageD(img,mw,mh)    TROB_Image,img,MinWidth(mw),MinHeight(mh),Flags(TRIM_BOOPSI)
  218.  
  219. /* Attributes */
  220. #define ID(id)                TRAT_ID,id
  221. #define VAL(val)            TRAT_Value,(val)
  222. #define EmptyText            TRAT_Text,''
  223. #define Txt(t)                TRAT_Text,t
  224. #define MinWidth(w)            TRAT_MinWidth,(w)
  225. #define MinHeight(h)        TRAT_MinHeight,(h)
  226. #define Flags(f)            TRAT_Flags,(f)
  227. #define Disabled            TRAT_Disabled,TRUE
  228. #define ObjectBackfillWin    TRAT_Backfill,TRBF_WINDOWBACK
  229. #define ObjectBackfillReq    TRAT_Backfill,TRBF_REQUESTERBACK
  230. #define ObjectBackfillB        TRAT_Backfill,TRBF_NONE
  231. #define ObjectBackfillS        TRAT_Backfill,TRBF_SHINE
  232. #define ObjectBackfillSA        TRAT_Backfill,TRBF_SHINE_SHADOW
  233. #define ObjectBackfillSF        TRAT_Backfill,TRBF_SHINE_FILL
  234. #define ObjectBackfillSB        TRAT_Backfill,TRBF_SHINE_BACKGROUND
  235. #define ObjectBackfillA        TRAT_Backfill,TRBF_SHADOW
  236. #define ObjectBackfillAF        TRAT_Backfill,TRBF_SHADOW_FILL
  237. #define ObjectBackfillAB        TRAT_Backfill,TRBF_SHADOW_BACKGROUND
  238. #define ObjectBackfillF        TRAT_Backfill,TRBF_FILL
  239. #define ObjectBackfillFB        TRAT_Backfill,TRBF_FILL_BACKGROUND
  240. #define Butt(b)            TROB_Button,b
  241.  
  242. /* Requester support */
  243. #define BeginRequester(t,p)    WindowTitle(t),WindowPosition(p),WindowBackfillReq,WindowFlags(TRWF_NOZIPGADGET OR TRWF_NOSIZEGADGET OR TRWF_NOCLOSEGADGET OR TRWF_NODELZIP OR TRWF_NOESCCLOSE),VertGroupA,Space,HorizGroupA,Space,GroupBox,ObjectBackfillB
  244. #define BeginRequesterGads    Space,EndGroup,Space
  245. #define EndRequester        Space,EndGroup,EndProject
  246.  
  247. /* ////////////////////////////////////////////////////////////////////// */
  248. /* //////////////////////////////////////////////// The Triton message // */
  249. /* ////////////////////////////////////////////////////////////////////// */
  250.  
  251. OBJECT TR_Message
  252.     trm_Project:TR_Project,
  253.     trm_ID,
  254.     trm_Class,
  255.     trm_Data,
  256.     trm_Code,
  257.     trm_Qualifier,
  258.     trm_Seconds,
  259.     trm_Micros,
  260.     trm_App:TR_App
  261. ENDOBJECT
  262.  
  263. /* Message classes */
  264. #define TRMS_CLOSEWINDOW    1
  265. #define TRMS_ERROR        2
  266. #define TRMS_NEWVALUE    3
  267. #define TRMS_ACTION        4
  268. #define TRMS_ICONDROPPED    5
  269. #define TRMS_KEYPRESSED    6
  270. #define TRMS_HELP        7
  271.  
  272. /* ////////////////////////////////////////////////////////////////////// */
  273. /* //////////////////////////////////////////////// Triton error codes // */
  274. /* ////////////////////////////////////////////////////////////////////// */
  275.  
  276. #define TRER_OK        0
  277.  
  278. #define TRER_ALLOCMEM    1
  279. #define TRER_OPENWINDOW    2
  280. #define TRER_WINDOWTOOBIG    3
  281. #define TRER_DRAWINFO    4
  282. #define TRER_OPENFONT    5
  283. #define TRER_CREATEMSGPORT    6
  284. #define TRER_INSTALLOBJECT    7
  285. #define TRER_CREATECLASS        8
  286. #define TRER_NOLOCKPUBSCREEN    9
  287. #define TRER_CREATEMENUS        12
  288. #define TRER_GT_CREATECONTEXT    14
  289. #define TRER_MAXERRORNUM        15
  290.  
  291. /* ////////////////////////////////////////////////////////////////////// */
  292. /* ///////////////////////////////////////// Tags for TR_OpenProject() // */
  293. /* ////////////////////////////////////////////////////////////////////// */
  294.  
  295. /* Window/Project */
  296. #define TRWI_Title                (TAG_USER+1)
  297. #define TRWI_Flags                (TAG_USER+2)
  298. #define TRWI_Underscore            (TAG_USER+3)
  299. #define TRWI_Position            (TAG_USER+4)
  300. #define TRWI_CustomScreen        (TAG_USER+5)
  301. #define TRWI_PubScreen            (TAG_USER+6)
  302. #define TRWI_PubScreenName        (TAG_USER+7)
  303. #define TRWI_PropFontAttr        (TAG_USER+8)
  304. #define TRWI_FixedWidthFontAttr    (TAG_USER+9)
  305. #define TRWI_Backfill            (TAG_USER+10)
  306. #define TRWI_ID                (TAG_USER+11)
  307. #define TRWI_Dimensions            (TAG_USER+12)
  308. #define TRWI_ScreenTitle            (TAG_USER+13)
  309.  
  310. /* Menus */
  311. #define TRMN_Title        (TAG_USER+101)
  312. #define TRMN_Item        (TAG_USER+102)
  313. #define TRMN_Sub        (TAG_USER+103)
  314. #define TRMN_Flags        (TAG_USER+104)
  315.  
  316. /* General object attributes */
  317. #define TRAT_ID        (TAG_USER+150)
  318. #define TRAT_Flags        (TAG_USER+151)
  319. #define TRAT_Value        (TAG_USER+152)
  320. #define TRAT_Text        (TAG_USER+153)
  321. #define TRAT_Disabled    (TAG_USER+154)
  322. #define TRAT_Backfill    (TAG_USER+155)
  323. #define TRAT_MinWidth    (TAG_USER+156)
  324. #define TRAT_MinHeight    (TAG_USER+157)
  325.  
  326. #define TROB_USER        (TAG_USER+800)
  327.  
  328. /* ////////////////////////////////////////////////////////////////////// */
  329. /* ////////////////////////////////////////////////////// Window flags // */
  330. /* ////////////////////////////////////////////////////////////////////// */
  331.  
  332. #define TRWF_BACKDROP        1
  333. #define TRWF_NODRAGBAR        2
  334. #define TRWF_NODEPTHGADGET    4
  335. #define TRWF_NOCLOSEGADGET    8
  336. #define TRWF_NOACTIVATE        $10
  337. #define TRWF_NOESCCLOSE        $20
  338. #define TRWF_NOPSCRFALLBACK    $40
  339. #define TRWF_NOZIPGADGET        $80
  340. #define TRWF_ZIPCENTERTOP    $100
  341. #define TRWF_NOMINTEXTWIDTH    $200
  342. #define TRWF_NOSIZEGADGET    $400
  343. #define TRWF_NOFONTFALLBACK    $800
  344. #define TRWF_NODELZIP        $1000
  345. #define TRWF_SIMPLEREFRESH    $2000
  346. #define TRWF_ZIPTOCURRENTPOS    $4000
  347. #define TRWF_APPWINDOW        $8000
  348. #define TRWF_ACTIVATESTRGAD    $10000
  349. #define TRWF_HELP            $20000
  350.  
  351. /* ////////////////////////////////////////////////////////////////////// */
  352. /* //////////////////////////////////////////////////////// Menu flags // */
  353. /* ////////////////////////////////////////////////////////////////////// */
  354.  
  355. #define TRMF_CHECKIT        1
  356. #define TRMF_CHECKED        2
  357. #define TRMF_DISABLED        4
  358.  
  359. /* ////////////////////////////////////////////////////////////////////// */
  360. /* ////////////////////////////////////////////////// Window positions // */
  361. /* ////////////////////////////////////////////////////////////////////// */
  362.  
  363. #define TRWP_DEFAULT        0
  364. #define TRWP_BELOWTITLEBAR    1
  365. #define TRWP_CENTERTOP        1025
  366. #define TRWP_TOPLEFTSCREEN    1026
  367. #define TRWP_CENTERSCREEN    1027
  368. #define TRWP_CENTERDISPLAY    1028
  369. #define TRWP_MOUSEPOINTER    1029
  370.  
  371. /* ////////////////////////////////////////////////////////////////////// */
  372. /* //////////////////////////////////////////////////// Backfill types // */
  373. /* ////////////////////////////////////////////////////////////////////// */
  374.  
  375. #define TRBF_WINDOWBACK        0
  376. #define TRBF_REQUESTERBACK    1
  377. #define TRBF_NONE            2
  378. #define TRBF_SHINE            3
  379. #define TRBF_SHINE_SHADOW    4
  380. #define TRBF_SHINE_FILL        5
  381. #define TRBF_SHINE_BACKGROUND    6
  382. #define TRBF_SHADOW            7
  383. #define TRBF_SHADOW_FILL        8
  384. #define TRBF_SHADOW_BACKGROUND    9
  385. #define TRBF_FILL            10
  386. #define TRBF_FILL_BACKGROUND    11
  387.  
  388. /* ////////////////////////////////////////////////////////////////////// */
  389. /* ////////////////////////////////////////////// Display Object flags // */
  390. /* ////////////////////////////////////////////////////////////////////// */
  391.  
  392. /* General flags */
  393. #define TROF_RAISED            1
  394. #define TROF_HORIZ            2
  395. #define TROF_VERT            4
  396. #define TROF_RIGHTALIGN        8
  397.  
  398. /* Text flags */
  399. #define TRTX_NOUNDERSCORE    $100
  400. #define TRTX_HIGHLIGHT        $200
  401. #define TRTX_3D            $400
  402. #define TRTX_BOLD            $800
  403. #define TRTX_TITLE            $1000
  404. #define TRTX_SELECTED        $2000
  405.  
  406. /* ////////////////////////////////////////////////////////////////////// */
  407. /* ////////////////////////////////////////////////////// Menu entries // */
  408. /* ////////////////////////////////////////////////////////////////////// */
  409.  
  410. #define TRMN_BARLABEL        (-1)
  411.  
  412. /* ////////////////////////////////////////////////////////////////////// */
  413. /* /////////////////////////////////////////// Tags for TR_CreateApp() // */
  414. /* ////////////////////////////////////////////////////////////////////// */
  415.  
  416. #define TRCA_Name        (TAG_USER+1)
  417. #define TRCA_LongName    (TAG_USER+2)
  418. #define TRCA_Info        (TAG_USER+3)
  419. #define TRCA_Version    (TAG_USER+4)
  420. #define TRCA_Release    (TAG_USER+5)
  421. #define TRCA_Date        (TAG_USER+6)
  422.  
  423. /* ////////////////////////////////////////////////////////////////////// */
  424. /* ///////////////////////////////////////// Tags for TR_EasyRequest() // */
  425. /* ////////////////////////////////////////////////////////////////////// */
  426.  
  427. #define TREZ_ReqPos        (TAG_USER+1)
  428. #define TREZ_LockProject    (TAG_USER+2)
  429. #define TREZ_Return        (TAG_USER+3)
  430. #define TREZ_Title        (TAG_USER+4)
  431. #define TREZ_Activate    (TAG_USER+5)
  432.  
  433. /* ////////////////////////////////////////////////////////////////////// */
  434. /* ///////////////////////////////////////// The Application Structure // */
  435. /* ////////////////////////////////////////////////////////////////////// */
  436.  
  437. OBJECT TR_App
  438.     tra_MemPool,
  439.     tra_BitMask,
  440.     tra_LastError,
  441.     tra_Name,
  442.     tra_LongName,
  443.     tra_Info,
  444.     tra_Version,
  445.     tra_Release,
  446.     tra_Date,
  447.     tra_AppPort:MsgPort,
  448.     tra_IDCMPPort:MsgPort,
  449.     tra_Prefs,
  450.     tra_LastProject:TR_Project,
  451.     tra_InputEvent:InputEvent
  452. ENDOBJECT
  453.  
  454. /* ////////////////////////////////////////////////////////////////////// */
  455. /* ////////////////////////////////////////// The Dimensions Structure // */
  456. /* ////////////////////////////////////////////////////////////////////// */
  457.  
  458. OBJECT TR_Dimensions
  459.     trd_Left:WORD,
  460.     trd_Top:WORD,
  461.     trd_Width:WORD,
  462.     trd_Heigh:WORD,
  463.     trd_Left2:WORD,
  464.     trd_Top2:WORD,
  465.     trd_Width:WORD,
  466.     trd_Heigh:WORD,
  467.     trd_Zoomed:BYTE,
  468.     reserved[3]:WORD
  469. ENDOBJECT
  470.  
  471. /* ////////////////////////////////////////////////////////////////////// */
  472. /* ///////////////////////////////////////////// The Project Structure // */
  473. /* ////////////////////////////////////////////////////////////////////// */
  474.  
  475. OBJECT TR_Project
  476.     trp_App:TR_App,
  477.     trp_Screen:Screen,
  478.  
  479.     trp_LockedPubScreen:Screen,
  480.     trp_ScreenTitle,
  481.  
  482.     trp_Window:Window,
  483.     trp_ID,
  484.     trp_AppWindow:AppWindow,
  485.  
  486.     trp_IDCMPFlags,
  487.     trp_Flags,
  488.  
  489.     trp_NewMenu:NewMenu,
  490.     trp_NewMenuSize,
  491.     trp_Menu:MENU,
  492.     trp_NextSelect:WORD,
  493.  
  494.     trp_VisualInfo,
  495.     trp_DrawInfo:DrawInfo,
  496.     trp_UserDimensions:TR_Dimensions,
  497.     trp_Dimensions:TR_Dimensions,
  498.  
  499.     trp_WindowStdHeight,
  500.     trp_LeftBorder,
  501.     trp_RightBorder,
  502.     trp_TopBorder,
  503.     trp_BottomBorder,
  504.     trp_InnerWidth,
  505.     trp_InnerHeight,
  506.     trp_ZipDimensions[4]:WORD,
  507.     trp_AspectFixing:WORD,
  508.  
  509.     trp_ObjectList:MinList,
  510.     trp_MenuList:MinList,
  511.     trp_IDList:MinList,
  512.     trp_MemPool,
  513.     trp_HasObjects:BYTE,
  514.  
  515.     trp_PropAttr:TextAttr,
  516.     trp_FixedWidthAttr:TextAttr,
  517.     trp_PropFont:TextFont,
  518.     trp_FixedWidthFont:TextFont,
  519.     trp_OpenedPropFont:BYTE,
  520.     trp_OpenedFixedWidthFont:BYTE,
  521.     trp_TotalPropFontHeight:WORD,
  522.  
  523.     trp_BackfillType,
  524.     trp_BackfillHook:HOOK,
  525.  
  526.     trp_GadToolsGadgetList:Gadget,
  527.     trp_PrevGadget:Gadget,
  528.     trp_NewGadget:NewGadget,
  529.  
  530.     trp_InvisibleRequest:Requester,
  531.     trp_IsUserLocked:BYTE,
  532.  
  533.     trp_CurrentID,
  534.     trp_IsCancelDown:BYTE,
  535.     trp_IsShortcutDown:BYTE,
  536.     trp_Underscore:BYTE,
  537.  
  538.     trp_EscClose:BYTE,
  539.     trp_DelZip:BYTE,
  540.     trp_PubScreenFallBack:BYTE,
  541.     trp_FontFallBack:BYTE,
  542.  
  543.     trp_OldWidth:WORD,
  544.     trp_OldHeight:WORD
  545. ENDOBJECT
  546.  
  547. /* ////////////////////////////////////////////////////////////////////// */
  548. /* ///////////////////////////// Default classes, attributes and flags // */
  549. /* ////////////////////////////////////////////////////////////////////// */
  550.  
  551. /* Classes */
  552.  
  553. #define TROB_Button        (TAG_USER+305)
  554. #define TROB_CheckBox    (TAG_USER+303)
  555. #define TROB_Cycle        (TAG_USER+310)
  556. #define TROB_FrameBox    (TAG_USER+306)
  557. #define TROB_DropBox    (TAG_USER+312)
  558. #define TRGR_Horiz        (TAG_USER+201)
  559. #define TRGR_Vert        (TAG_USER+202)
  560. #define TRGR_End        (TAG_USER+203)
  561. #define TROB_Line        (TAG_USER+301)
  562. #define TROB_Palette    (TAG_USER+307)
  563. #define TROB_Scroller    (TAG_USER+309)
  564. #define TROB_Slider        (TAG_USER+308)
  565. #define TROB_Space        (TAG_USER+901)
  566. #define TROB_String        (TAG_USER+311)
  567. #define TROB_Text        (TAG_USER+304)
  568. #define TROB_Listview    (TAG_USER+313)
  569. #define TROB_Progress    (TAG_USER+314)
  570. #define TROB_Image        (TAG_USER+315)
  571.  
  572. /* Button */
  573. #define TRBU_RETURNOK    $10000
  574. #define TRBU_ESCOK        $20000
  575. #define TRBU_SHIFTED    $40000
  576. #define TRBU_UNSHIFTED    $80000
  577. #define TRBU_YRESIZE    $100000
  578. #define TRBT_TEXT        0
  579. #define TRBT_GETFILE    1
  580. #define TRBT_GETDRAWER    2
  581. #define TRBT_GETENTRY    3
  582.  
  583. /* Group */
  584. #define TRGR_PROPSHARE    0
  585. #define TRGR_EQUALSHARE    1
  586. #define TRGR_PROPSPACES    2
  587. #define TRGR_ARRAY        4
  588.  
  589. #define TRGR_ALIGN        8
  590. #define TRGR_CENTER        $10
  591.  
  592. #define TRGR_FIXHORIZ    $20
  593. #define TRGR_FIXVERT    $40
  594. #define TRGR_INDEP        $80
  595.  
  596. /* Framebox */
  597. #define TRFB_GROUPING    1
  598. #define TRFB_FRAMING    2
  599. #define TRFB_TEXT        4
  600.  
  601. /* Scroller */
  602. #define TRSC_Total        (TAG_USER+1504)
  603. #define TRSC_Visible    (TAG_USER+1505)
  604.  
  605. /* Slider */
  606. #define TRSL_Min        (TAG_USER+1502)
  607. #define TRSL_Max        (TAG_USER+1503)
  608.  
  609. /* Space */
  610. #define TRST_NONE        1
  611. #define TRST_SMALL        2
  612. #define TRST_NORMAL        3
  613. #define TRST_BIG        4
  614.  
  615. /* Listview */
  616. #define TRLV_Top        (TAG_USER+1506)
  617. #define TRLV_READONLY    $10000
  618. #define TRLV_SELECT        $20000
  619. #define TRLV_SHOWSELECTED    $40000
  620. #define TRLV_NOCURSORKEYS    $80000
  621. #define TRLV_NONUMPADKEYS    $100000
  622. #define TRLV_FWFONT            $200000
  623. #define TRLV_NOGAP            $400000
  624.  
  625. /* Image */
  626. #define TRIM_BOOPSI        $10000
  627.  
  628. /* Cycle */
  629. #define TRCY_MX        $10000
  630. #define TRCY_RIGHTLABELS    $20000
  631.  
  632. /* ////////////////////////////////////////////////////////////////////// */
  633. /* /////////////////////////////////////////////////////////// The End // */
  634. /* ////////////////////////////////////////////////////////////////////// */
  635.